<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us" lang="en-us">
<head>
  <link href="//gmpg.org/xfn/11" rel="profile">
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <meta name="generator" content="Hugo 0.68.3" />

  
  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <title>封装、继承、多态 &middot; 我的博客</title>

  
  <link type="text/css" rel="stylesheet" href="/my_technology_blog/css/print.css" media="print">
  <link type="text/css" rel="stylesheet" href="/my_technology_blog/css/poole.css">
  <link type="text/css" rel="stylesheet" href="/my_technology_blog/css/syntax.css">
  <link type="text/css" rel="stylesheet" href="/my_technology_blog/css/hyde.css">
    <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Abril+Fatface|PT+Sans:400,400i,700">


  
  <link rel="apple-touch-icon-precomposed" sizes="144x144" href="/apple-touch-icon-144-precomposed.png">
  <link rel="shortcut icon" href="/favicon.png">

  
  
</head>

  <body class="theme-base-0b ">
  <aside class="sidebar">
  <div class="container sidebar-sticky">
    <div class="sidebar-about">
      <a href="/my_technology_blog/"><h1>我的博客</h1></a>
      <p class="lead">
       杨博的博客 
      </p>
    </div>

    <nav>
      <ul class="sidebar-nav">
        <li><a href="/my_technology_blog/">Home</a> </li>
        
      </ul>
    </nav>

    <p>&copy; 2021. All rights reserved. </p>
  </div>
</aside>

    <main class="content container">
    <div class="post">
  <h1>封装、继承、多态</h1>
  <time datetime=2020-06-26T13:52:14&#43;0800 class="post-date">Fri, Jun 26, 2020</time>
  <p><strong>1.</strong> <strong>封装</strong></p>
<p>​	1．在类中对数据的赋值、内部调用对外部用户是透明的</p>
<ol start="2">
<li>
<p>这使类变成了一个胶囊或容器，里面包含着类的数据和方法</p>
</li>
<li>
<p>作用：</p>
</li>
</ol>
<p>　　1）防止数据被随意修改</p>
<p>　　2）使外部程序不需要关注对象内部的构造，只需要通过对外提供的接口进行直接访问</p>
<p><strong>2</strong> <strong>．继承（代码重用）</strong></p>
<ol>
<li>
<p>一个类可以派生出子类，在这个父类里定义的属性、方法自动被子类继承</p>
</li>
<li>
<p>比如CS中的警察和恐怖分子，可以将两个角色的相同点写到一个父类中，然后同时去继承它</p>
</li>
<li>
<p>使用经典类： Person.<strong>init</strong>(self,name,age) 并重写写父类Person的构造方法，实现，先覆盖，再继承，再重构</p>
</li>
</ol>
<p><strong>3.多态（接口重用）</strong></p>
<p>​	1．多态是面向对象的重要特性,简单点说:“一个接口，多种实现”</p>
<ol start="2">
<li>
<p>指一个基类中派生出了不同的子类，且每个子类在继承同样的方法名的同时又对父类的方法做了不同的实现</p>
</li>
<li>
<p>这就是同一种事物表现出的多种形态</p>
</li>
<li>
<p>比如黄种人继承了人talk这个功能，但是他说的是中文，而美国人的talk是英文，但是他们是同样的talk</p>
<p>**作用：**简单的讲就是允许父类调用子类的方法</p>
</li>
</ol>

</div>


    </main>

    
  </body>
</html>
